class Evasion < ActiveRecord::Base

  after_save :modificar_coeficiente
  after_destroy :modificar_coeficiente
  

  belongs_to :persona

  validates_presence_of :fecha, :persona_id
  validate_on_create :debe_ser_alumno
  
  private
  def debe_ser_alumno
    unless persona and persona.es_alumno? then
      errors.add "", "La persona debe ser alumno para poder darse de baja."
    end
  end
  
  # si queda sin visitas, etc supongo que era alumno ya que tuvo evasion.
  def modificar_coeficiente
    if persona.evasions.size ==0 and persona.matriculas.size==0 and persona.visitas==0 then
      persona.coeficiente_id = Coeficiente::ALUMNO
    else
      persona.coeficiente_id = persona.actualizar_coeficiente
    end
    persona.save
  end
  
end